package com.iwhalecloud.bss.kite.cucc.client.api.rule.check;
import com.iwhalecloud.bss.kite.client.dto.rule.common.DataRuleResult;
import com.iwhalecloud.bss.kite.manager.inst.KiteOfferInstAcct;
import com.ztesoft.bss.rul.core.client.dto.common.RuleCommonParam;

import java.util.List;
import java.util.Map;
public interface ICuccCheckService {

    DataRuleResult onDelOfferInstAcctCheck(String scenInstId , RuleCommonParam ruleCommonParam, KiteOfferInstAcct delKiteOfferInstAcct);


    DataRuleResult checkPlatformType(String sceneInstId, RuleCommonParam ruleCommonParam);


    Map onInitServiceOfferChangeScene(Map<String,Object> requestParam, List<String> serviceOfferIdList);


    List<String> checkOfferInstFeeList(String scenInstId,RuleCommonParam ruleCommonParam);


    DataRuleResult checkUrgentOrDelay(String sceneInstId, RuleCommonParam ruleCommonParam);

    DataRuleResult  onAddOfferInstCheck(String sceneInstId, RuleCommonParam ruleCommonParam);

    DataRuleResult SafeProductOnDelProdInstCheck(String sceneInstId, RuleCommonParam ruleCommonParam);

    DataRuleResult specialLineStartRentCheck(String sceneInstId, RuleCommonParam ruleCommonParam);

    DataRuleResult memberDelCheck(String sceneInstId, RuleCommonParam ruleCommonParam);

    DataRuleResult checkOnOrderPreview(String sceneInstId, String custId, RuleCommonParam ruleCommonParam);

    DataRuleResult cuccCheckOnOrderPreview(String sceneInstId, String custId, RuleCommonParam ruleCommonParam);

    DataRuleResult cuccCheckOnOrderPreViewCommon(String sceneInstId, String custId, RuleCommonParam ruleCommonParam);

    DataRuleResult singlePaymentFeePayChargeCheck(String amount, String serialNumber, RuleCommonParam ruleCommonParam);

    DataRuleResult checkOnOrderPreViewCommon(String sceneInstId, String custId, RuleCommonParam ruleCommonParam);

    DataRuleResult PIARPayMemberCheck(RuleCommonParam ruleCommonParam);
}
